其他
基于Spring Cloud的微服务电商平台系统,这个项目手把手教你实现
大家好,我是TJ
关注TJ君,回复“武功秘籍”免费获取计算机宝典书籍
一年之计在于春,新年就要有新的打算,TJ君身边不少小伙伴都有点想在新的一年里开个网店的冲动,但是如何入手、如何开店都是个学问,需要好好研究,不过这也说明了电商行业的前景还是不错滴。
所以当TJ君今天留意到这个开源项目的时候,第一反应就是,可用!推荐!
mall4cloud
说到mall4cloud,不得不先说下Mall4j。
Mall4j是一个商用的提供多元化电商服务,满足企业多场景业务需求,为垂直行业提供专业的电商解决方案网站,提供多种成熟的电商配套服务,而mall4cloud则正是它的开源版本!
此开源版本,是一个基于Spring Cloud、Nacos、Seata、Mysql、Redis、RocketMQ、canal、ElasticSearch、minio的微服务B2B2C电商商城系统,非常良心的没有其他二次封装,真正做到完全开源,小伙伴们无论是学习,还是二次开发,都是非常合适的一个项目。
项目使用 AGPLv3 开源规则,采用主流的互联网技术架构,支持集群部署、服务注册和发现以及拥有完整的订单流程,同时还拥有不错的UI设计效果。
先看看整体目录结构及应用分层:
其中各项分层解释是这样的:
VO(View Object):显示层对象,通常是 Web 向模板渲染引擎层传输的对象。 DTO(Data Transfer Object):数据传输对象,前端像后台进行传输的对象,类似于param。 BO(Business Object):业务对象,内部业务对象,只在内部传递,不对外进行传递。 Model:模型层,此对象与数据库表结构一一对应,通过 Mapper 层向上传输数据源对象。 Controller:主要是对外部访问控制进行转发,各类基本参数校验,或者不复用的业务简单处理等。为了简单起见,一些与事务无关的代码也在这里编写。 FeignClient:由于微服务之间存在互相调用,这里是内部请求的接口。 Controller:主要是对内部访问控制进行转发,各类基本参数校验,或者不复用的业务简单处理等。为了简单起见,一些与事务无关的代码也在这里编写。 Service 层:相对具体的业务逻辑服务层。 Mapper持久层:数据访问层,与底层 MySQL进行数据交互。 Listener:监听 RocketMQ 进行处理,有时候会监听easyexcel相关数据。 Manager 层:通用业务处理层,主要有三个特点。 对第三方平台封装的层,预处理返回结果及转化异常信息,适配上层接口。 对 Service 层通用能力的下沉,如缓存方案、中间件通用处理。 与 DAO 层交互,对多个 DAO 的组合复用。
了解了这些我们还可以看下项目的架构图:
然后还可以看下实际运行的效果:
订单界面
平台管理界面
小程序界面
项目还提供了一系列的开发及搭建文档,供小伙伴们在使用过程中查看:
怎么样?想试试电商项目的小伙伴,不要犹豫啦,赶紧来学学吧,地址在这里:
点击下方卡片,关注公众号“TJ君”
回复“mall4cloud”,获取仓库地址
关注我,每天了解一个牛x、好用、有趣的东东
往期推荐